<template>
    <van-field 
        @input="changeInput"
        :value="value"
        :data-name="name"
        :required="!norequired" 
        clearable 
        :label="label" 
        :left-icon="leftIcon" 
        :right-icon="rightIcon" 
        :placeholder="placeholder"
        @blur="changeBlur"
        :disabled="disabled"
        @click-icon="rightIconClick"
        :type="type"
        ></van-field>
</template>

<script>
export default {
    props:{
        // 需要什么属性就往里面补 
        value:[String,Number],
        label:String,
        leftIcon:String,
        rightIcon:String,
        placeholder:String,
        name:String,
        disabled:Boolean,
        type:String,
        norequired:Boolean  // 默认是false 不影响其他的 这个
    },
    model: {
        prop: 'value', // 父往子绑定的数据，通过这个变量接收
        event: 'input'  //事件名
    },
    methods:{
        // 子改父
        changeInput(e){
            this.$emit('input',e.detail)
            this.$emit('testnum',e.detail)
            // this.$emit('change',this.name,e.detail) //此处的change是自定义的事件名，后面是携带的数据
        },
        changeBlur(e){
            this.$emit('blur',e.detail)
        },
        rightIconClick(){
            this.$emit('click-icon')
        }
    }
}
</script>
